The Application of Jini™ Technology to Enhance the Delivery of Mobile Services
By Steve Hashman and Steven Knudsen
December 2001
Jini™ and all Jini™ -based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries. Java™ and all Java™ -based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries. JMatos™, PsiNode™, and PsiNaptic™ are trademarks of PsiNaptic Inc. © 2001 PsiNaptic Inc.
© 2001 PsiNaptic Inc. 1
www.psinaptic.com
PsiNaptic Inc. 216, 200 Rivercrest Drive SE Calgary, Alberta Canada T2C 2X5 T: 403 720-2531 F: 403 720-2537
Executive Summary:
The focus of this paper is on the application of Jini™ network technology for resource-constrained mobile devices. As a result of a recent technology breakthrough, a micro version of Jini network technology can now be used to address a number of current challenges and gaps faced by the mobile industry. Some of the key challenges and service gaps in the mobile industry include: Providing Contextually Relevant Information and Services
As large volumes of Internet content become accessible by mobile devices, and as new mobile-specific content emerges, it will become too overwhelming for users to manage all the available information and services. In the mobile Internet environment, the traditional web-based destination model will not be able to deliver compelling end user information and services. The greatest challenge for the mobile Internet is the management of a pervasive electronic presence to sense and respond to a customer’s unique profile i.e., who they are, what they need, and their preferences in terms of information and services.
© 2001 PsiNaptic Inc.
2
Enabling Bluetooth™ to Deliver Compelling Personal Area Network (PAN) Services
Although communication technologies, such as Bluetooth, have the potential of enabling a wide range of new proximity-based PAN services, interoperability and ease of use issues continue to be a threat to the realization of this vision. Compelling Peer-to-Peer and Device-to-Device Services
There is an opportunity for mobile service providers to continue to enhance peerto-peer services, while increasing the utilization and payback on next generation networks. This can be accomplished if users are able to easily exchange applications, services, and data on a peer-to-peer basis, irrespective of the type of mobile device they are using and their network environment (WAN, LAN, or PAN). Significant challenges continue to exist in synchronization of data and in accessing the same content and applications across mobile devices, outside of specific server environments and trusted network domains. Efficient Configuration and Update of Mobile Computing Applications
Given the high volume and low price of mobile computing as compared to PC platforms, it is essential that mobile applications are configured and updated in a manner that is efficient, cost effective, and as easy as possible for the end user. Service providers are likely to face insurmountable challenges in penetrating the mass market if the desktop PC model of manual configuration and update is carried over to mobile computing. While there are compelling reasons for being able to configure and update mobile applications without the involvement of people, little progress appears to have been made in this area.
© 2001 PsiNaptic Inc.
3
As a result of a recent breakthrough in Java-based Jini network technology, novel solutions are now available using Jini technology on mobile, resourceconstrained devices. Potential uses of this micro version of Jini technology include: 1. Providing a mechanism for enabling a pervasive electronic presence that senses and responds to a customer-unique profile, allowing mobile users to automatically receive context-relevant services in a seamless manner across different networks (WAN, LAN and PAN). 2. Solving the interoperability and ease-of-use issues that currently exist with Bluetooth and other short-range communications technology, thus supporting the deployment of compelling PAN services. 3. Allowing applications to run in a seamless manner across mobile devices, and other Java-enabled devices (i.e., POS terminals, TV set-top boxes, desktop PC’s, etc.), without dependence on specific servers, and outside of service provider domains. 4. Enabling automatic configuration of applications on mobile devices. 5. Enabling automatic updating of applications on mobile devices. Jini technology can provide a non-proprietary mechanism to allow mobile device applications to integrate seamlessly into service provider and enterprise IT infrastructures. In addition, this breakthrough technology can enable a variety of other innovative mobile computing applications, which are outside the scope of this paper. Jini network technology is already used in a number of applications outside the mobile
© 2001 PsiNaptic Inc.
4
computing space and is poised to make further inroads. Some of these applications and sectors are discussed in other white papers and by other authors. As with any other technology development, the true potential of this technology can only be realized through effective partnerships and alliances with manufacturers and systems and service providers across the mobile industry.
© 2001 PsiNaptic Inc.
5
Table Of Contents 1 2 Introduction – The Mobile Internet Landscape .................................................... 8 Key Service Challenges, Opportunities and Gaps............................................ 10 2.1 Providing Contextually Relevant Mobile Internet Services.......... 10 The Challenge and The Opportunity ................................................... 10 Current Service Gaps ............................................................................ 11
2.1.1 2.1.2 2.2
Delivering Personal Area Network (PAN) Services ...................... 15 The Challenge and The Opportunity ................................................... 15 Current Service Gaps ............................................................................ 16
2.2.1 2.2.2 2.3
Delivery of Peer-to-Peer and Device-to-Device Services............ 18 The Challenge and The Opportunity ................................................... 18 Current Service Gaps ............................................................................ 18
2.3.1 2.3.2 2.4
Efficient Configuration and Update of Mobile Computing Applications ......................................................................................... 22 The Challenge and The Opportunity ................................................... 22 Current Service Gaps ............................................................................ 23
2.4.1 2.4.2 2.5
Service Delivery Within a Variable and Ad Hoc Mobile Environment ........................................................................................ 25 The Challenge and The Opportunity ................................................... 25 Current Service Gaps ............................................................................ 25
2.5.1 2.5.2 3
What Is Needed To Address Industry Challenges?.......................................... 26
© 2001 PsiNaptic Inc. 6
4
A Novel Solution To Address Key Industry Challenges................................... 27 4.1 4.2 Solution Overview—Jini™ Network Technology........................... 27 Technology—Jini Technology and JMatos™ Software ................ 29 Jini Network Technology Overview ..................................................... 29 Past Limitations of Jini Technology ..................................................... 31 A New Approach—The Foundation of JMatos™ .............................. 32 PsiNaptic’s JMatos Software................................................................ 33
4.2.1 4.2.2 4.2.3 4.2.4 5.0 5.1 5.2 5.3
Applications of JMatos to Address Mobile Challenges……………..……..34 Providing Contextually-Relevant Mobile Services ........................ 34 Delivering Personal Area Network Services .................................. 35 Efficient Configuration and Update of Mobile Computing Applications ......................................................................................... 36 Automatic Device Updates ................................................................... 37 Integration of Mobile Devices in IT Infrastructures ........................... 37
5.3.1 5.3.2 5.4 6 7 8 9
Delivery of Peer-to-Peer and Device-to-Device Services............ 40
Conclusion............................................................................................................... 41 References: ............................................................................................................. 42 Acronyms……………………………………………………………………….…43 Legal Notice………………………………………………………………………44
© 2001 PsiNaptic Inc.
7
1. Introduction – The Mobile Internet Landscape WAP technology was designed to provide users of mobile devices with rapid and efficient access to the mobile Internet via an optimized wireless protocol. It was once viewed as method by which all content and applications would be downloaded to a mobile device. The reality is that WAP is not a suitable protocol for downloading and executing applications, and to this point the user uptake of WAP-based applications has not met industry expectations. Despite this, there is a great deal of industry investment and momentum behind WAP, and a new version promises to solve a number of outstanding user issues, including security and the richness of the user experience. The micro edition of Java™ (J2ME) provides the inherent benefits of the Java programming language and execution environment on resource-constrained mobile devices. The deployment of Java-based technologies on mobile devices is ushering in an era in which mobile devices will be the most numerous pervasive computing platform. Java’s promise of “write-once, run anywhere” means that applications can be deployed and run independent of the underlying device hardware and software. Java technologies provide common application programming interfaces (API’s) and are used by over 2.5 million developers worldwide. By 2005 mobile Java shipments are expected to account for over 50 percent of all mobile phones shipped worldwide1. Mobile Java (J2ME) was designed to build on the strengths of WAP and webbrowser technologies, and extend those capabilities by supporting new applications that are tailored for the mobile device environment. With Java, applications can be developed that break free of the desktop Internet paradigm - a
1
Estimates from sources including VDC, Cahners and the ARC Group vary from 37.5% to 69%, with the ARC Group suggesting all mobile phones will be Java-enabled. Total mobile phone shipment in 2005 are estimated at 1.4 Billion, therefore based on a conservative estimate of 50% mobile Java shipments are estimated to exceed 700 Million. © 2001 PsiNaptic Inc. 8
paradigm that has not proven that successful on small devices. Java provides a rich user interface, security, and the ability to perform off-line operations. Java is proving popular with consumers for mobile infotainment applications (e.g., games, maps guides, etc.). And, since Java is already established in enterprise applications, J2ME stands to be the catalyst to extend the reach of enterprise applications like productivity and sales force automation to mobile devices. Today, WAP and mobile Java technologies are being deployed side-by-side to deliver mobile Internet and mobile computing applications. Leading GSM-driven industry initiatives, such as m-services are aimed at improving the current WAP experience over data packet networks. M-Services is an mobile operator-driven initiative, which is expected to generate higher revenues from mobile multimedia content and services. Mobile Java is an integral part of this emerging service delivery environment. The industry continues to build on already popular text messaging solutions with multimedia messaging platforms and phones that support graphics, pictures, and sound. The SyncML initiative is being driven by key members of industry with the aim of providing a standard framework and protocol for synchronizing personal information management (PIM) data across mobile devices and enterprise systems. Additionally, applications of location technology and speech and text recognition technologies are becoming more commonplace. A new market is developing around proximity or personal area networks (PAN). Bluetooth™ promises to enable a wide range of services that enable devices (i.e., mobile phones, PDAs, headsets, game consoles, digital cameras, MP3 players, vending machines, PCs, etc.) to communicate with each other when they are in proximity. Bluetooth has the support of over 2000 companies. Within the enterprise environment, where mobility is not as large an issue, WiFi or 802.11b will remain an attractive, higher speed wireless communications standard.
© 2001 PsiNaptic Inc. 9
Despite these promising developments, the mobile Internet is complex and immature and no overall solutions prevail. Users continue to challenge service providers to deliver compelling content and services that are simple, personalized, timely, and location and context relevant. With the proliferation of networks and mobile Internet content, service providers are attempting to build user loyalty and cost advantages through mobile portals. Although the current performance of mobile portals has been disappointing, service providers are continuing to refine their mobile portal strategies. From a service delivery perspective, there are a number of key service challenges and opportunities that need to be addressed by the mobile industry. This paper reviews some key outstanding service challenges and opportunities in the industry, indicates where there are still a number of service gaps, and offers novel solutions now possible as a result of a recent breakthrough in Java-based Jini™ network technology for mobile, resource-constrained devices.
2 2.1
Key Service Challenges, Opportunities and Gaps Providing Contextually Relevant Mobile Internet Services
2.1.1 The Challenge and The Opportunity In the mobile Internet environment, the traditional web-based destination model (i.e., browsing and selecting content, or managing pushed content from numerous sites) will not be able to deliver compelling end user information and services. As large volumes of Internet content becomes mobile, and as new mobile-specific content emerges, it will become too onerous for users to manage all the available information and services. Additionally, the model seriously hampers the efforts of content providers to drive up user traffic volume and revenues. The greatest challenge for the mobile Internet is the management of a pervasive electronic
© 2001 PsiNaptic Inc. 10
presence to sense and respond to a customer’s unique profile i.e., who they are, what they need, what are their preferences in terms of information and services. Providers of mobile services will need to master contextual service delivery in order to provide compelling services whenever and wherever users are ready and willing to purchase. At the enterprise level, mobile applications that are a menudriven subset of desktop applications will not be compelling for workers or provide sufficient productivity and financial payback. The challenge is to deliver contextually relevant services that are specific to a workers job functions and schedule (e.g., providing a customer’s order status when the salesperson is on the customer’s premises). 2.1.2 Current Service Gaps The information and services required by people will be as varied as the environments through which they move. A person’s needs depend on their context - they will have different requirements at home, at the mall, at school, or at the office. Each environment might also include a combination of WANs, LANs, or PANs. From the perspective of the user, these varied contexts and networks result in an almost overwhelming mountain of content and services. For example, DoCoMo’s nascent i-mode service deployed only on their public mobile WAN, offers users more than 40,000 public sites. 1. WAP Despite planned improvements in the speed and content-carrying ability of WAP, users simply will not have the time to browse content and manage “PUSH”-type services and sites as new WAN, LAN and PAN content and services come on line. How will users keep track of all the services they have setup, all their passwords, and will they invest the time required to manage that information when their circumstances and needs change?
© 2001 PsiNaptic Inc.
11
WAP search engines can help reduce choice to a limited degree for WANbased content; however, it is not clear how WAP will enable users to dynamically find and sift through a growing array of content and services that will exist across network environments. In addition, WAP assumes a constant connection to a server, raising questions on how WAP will help users discover and find services they want and need as they move through this dynamic environment, rapidly making and breaking network connections. 2. Mobile Java Mobile Java, in the form of i-mode (DoCoMo in Japan) or J2ME, has been shown to provide a better user experience. Applications can be tailored to the mobile environment and developers, and not bound by the desktop Internet paradigm. However, the user is still required to search for the appropriate application and then manage how and what that application does on their devices. As with WAP, there is a need to automate the deployment and management of Java applications. Users do not have the time to manage everything - and nor should they! 3. MExE and Java provisioning servers The Mobile Execution Environment or MExE is a specification by the 3G Partnership Project for application server environments incorporating both WAP and Java technologies. To date, no mobile device has implemented the standard. As a precursor to MExE implementations, a number of software systems providers are beginning to deploy Java provisioning servers. This technology helps to deliver contextually relevant services (e.g., by narrowing the user’s choice of content by basing searches on user preferences and device type). MExE requires service providers to invest in yet another technology specific platform. It offers no benefit when the user moves outside the service provider’s trusted domain, across different network boundaries, or between contexts.
© 2001 PsiNaptic Inc. 12
4. Location and voice recognition technology Location technology will make services more context-relevant to the user. People require services based on their location or, conversely, a service provider may target users based on where they are. For example, a person entering a theatre will desire to purchase tickets and perhaps food and drink. A provider of entertainment news will offer that person incentives to access their service at that location knowing that a customer in that venue is more likely to be interested in their service. Location-based services will help reduce the amount of data browsing and service management required of users, but are not of themselves sufficient to solve the problem in all contexts. Today, the onus is on the user to define the information and services against selected locations, and to manage all this from a variety of different service sites. Additionally, in many locations, such as work or home, the potential volume of information and services will be unmanageable. Overall, the current service delivery model for location services places too much of a content management burden on the user.
Voice recognition technology will help users navigate information and service offerings, but do little to help manage the amount of information available. 5. Enterprise specific challenges The extended enterprise will increasingly be the norm, with workers accessing corporate, supplier and partner data from different back-offices, and across the Internet. The Gartner Group estimates that by 2005 at least 40 percent of user data will reside outside the enterprise.
As new WAN and proximity-based business (PAN) services come on line and the enterprise worker moves freely across different environments, the boundaries between work and leisure will blur. In this environment, the kind of applications and even their presentation will have to dynamically adapt to
© 2001 PsiNaptic Inc. 13
the user’s needs. For example, a salesperson visiting a customer will need timely mobile access to that customer’s recent account details.
WAP in the Enterprise Most WAP enterprise applications have been disappointing. Menu-driven WAP applications often offer no more than a subset of functionality of desktop applications and provide less contextual relevance to the worker’s specific job function and daily schedule. In addition, WAP application deployments require significant customization and infrastructure development to integrate with the enterprise back office system.
Java in the Enterprise Java provides an established programming language and execution environment that, if not already present, can readily be integrated in the majority of back office systems. With the standardization of mobile Java profiles, the expectation is that corporate IT departments will soon be writing Java-based business applications for mobile phones, PDAs, and other devices. What is missing is the ability to integrate the Java-based mobile device with back office IT infrastructures.
Custom integration of Mobile Enterprise solutions There are a number of system integrators and wireless application service providers supplying mobile enterprise solutions, including integrated WAPbased solutions, specialized Java provisioning servers for the enterprise, enterprise portals, server-based pocket portal solutions, voice recognition and location-based systems, etc. These specialized solutions are provided by a growing list of players in the industry, including IBM, EDS, Siebel, DecisionWorks, Comverse, Cambridge, etc.
© 2001 PsiNaptic Inc.
14
Within this array of enterprise solutions, it is important to highlight the following issues: • The mobile Internet is complex and immature, and no overall solution providers exist for the enterprise. For most enterprises, partnering with key players is inevitable. • There is still a need to continue to refine the Internet portal model to accommodate remote workers using restricted mobile devices. There is a great need to refine solutions in order to be able to deliver contextually relevant and compelling solutions. • The majority of specialized solutions that exist today are geared toward the larger enterprise and are not a feasible alternative for the SME sector (small and medium-sized enterprises).
Summary
Many challenges and opportunities remain in delivering ubiquitous, contextually relevant consumer and enterprise services. 2.2 Delivering Personal Area Network (PAN) Services
2.2.1 The Challenge and The Opportunity Short-range wireless communications technologies, such as Bluetooth, promise to be the glue that will enable a range of services that the end user can obtain when in proximity of another device including peripherals (e.g., add-ons like hands-free
© 2001 PsiNaptic Inc.
15
headsets), PCs, vending machines, vehicle navigation systems, medical instruments, retail POS, home appliances, printers, etc. PAN services represent an emerging market that will further blur the boundaries between work and leisure. As wireless technology proliferates, more opportunities will emerge for machine-to-machine communications. Automating mundane user tasks will increase user convenience and productivity and serve to accelerate wireless technology adoption. New players, including system integrators, are targeting PAN opportunities as a means of securing a position in the mobile value chain. With Bluetooth radios being integrated in cellular phones, existing mobile operators need to participate in this emerging market in order to protect and increase the overall utilization of new networks (2.5/3G). The service challenge is to be able to deliver easy to use PAN services that function seamlessly across all devices that will function in PAN environments. 2.2.2 Current Service Gaps Interoperability and Ease of Use Despite the pervasive computing vision inherent in PANs, Bluetooth is still essentially a communications technology (i.e., a cable replacement), and interoperability and ease of use issues currently threaten the realization of this Bluetooth vision. The following quotations from Planet Wireless (July 2001) illustrate the current reality of realizing vision of seamless and easy to use PAN services. “Today’s level of interoperability just isn’t good enough to guarantee a positive user experience.” (Mike Foley, Wireless Architect, Microsoft, member of Bluetooth Special Interest Group)
© 2001 PsiNaptic Inc.
16
It can still take 10-20 configuration steps and process will be different for each brand of hardware…"Early Adopters are willing to go through this kind of hassle, but we need to make sure we provide the support they need.” “…each company has its own way of interpreting the Bluetooth specification and profiles, which means interoperability will not necessarily make it the application and user level.”
(Nick Hunn, managing director of electronics group TDK System Europe). The reality of ubiquitous PAN devices In addition to these Bluetooth issues, there is a strong need to readily incorporate embedded devices, and non-Bluetooth devices into PAN’s. This includes automation of information and transactions for vending machines, medical instruments, retail POS, home appliances, transportation ticketing agents, etc. This vision is strongly supported by leading thinkers in the evolution of computing such as the late Michael Dertouzos from MIT. “In the coming decade, half a billion human-operated machines and countless computers – in the form of appliances, sensors, controllers and the like – will be interconnected. And these machines and their users will do three things: buy, sell and freely exchange information and information services.” To date, the perception is that it will be a long time before all intelligent devices and machines will have the processing power, storage and other capabilities that are needed for them to participate as services in a PAN. The challenge is to find
© 2001 PsiNaptic Inc.
17
solutions that allow existing and new devices to participate in networks, and to act for themselves on behalf of their users. Summary Significant challenges and opportunities remain with respect to enabling Bluetooth (and other low-end wireless technologies) to provide service-level interoperability across a wide array of devices in a PAN. 2.3 Delivery of Peer-to-Peer and Device-to-Device Services
2.3.1 The Challenge and The Opportunity The popularity of text messaging in the mobile sector is now being enhanced with the emergence of MMS (Multi-Media Messaging) services that allow the exchange of more than just text. Today, users carry a number of mobile devices (i.e., cell phones, laptop computers and personal digital assistants) that have become indispensable aids in their work and leisure activities. There is an opportunity for mobile service providers continue to enhance peer-to-peer services, while increasing the utilization and payback on next generation networks. This can be accomplished if users are able to easily exchange applications, services, and data on a peer-to-peer basis, irrespective of the type of mobile device they are using, and irrespective of their network environment (WAN, LAN, or PAN). 2.3.2 Current Service Gaps The exchange of information using WAP and text messaging. SMS and text based mobile email services will be enhanced by MMS, enabling users to push more than just text (e.g., ring tones, logos, etc). With WAP it may
© 2001 PsiNaptic Inc. 18
be possible to enable users to push links and content to other users. In addition, portal-based solutions are emerging to enable real-time chat services (ICQ-like services) across mobile networks and the Internet. Accessing the same content and applications across mobile devices. a) WAP As WAP is server based, any WAP-enabled mobile device compliant with the current WAP specification should be able to access to applications developed against the specification. While this is true for the most part, slight manufacturer differences in WAP implementation cause problems for application and content developers, and for users trying to access WAP content using different manufacturer handsets. b) Mobile Java While Java offers many compelling advantages in terms of the richness of applications, security, interactivity, and hardware transparency, current mobile Java solutions fall short in their ability to manage and synchronize content across mobile devices. Synchronization of data across mobile devices
To date, synchronization of data has been characterized by a patchwork approach with a number of proprietary methods and protocols. Within the last two years, an industry supported initiative called ‘SyncML’ has emerged, driven by key industry players, including Ericsson, IBM, Lotus, Motorola, Nokia, Palm, Psion, etc. This initiative is intended to be the “…standard for universal synchronization of remote data across multiple networks, platforms and devices.” The aim is to support a common approach and to develop standards that will eliminate some of the existing barriers in this area.
© 2001 PsiNaptic Inc. 19
The initiative defines a common data synchronization protocol that can be used across devices, applications and networks types (WAN, PAN, LAN). The focus of this initiative is to provide a standard way of synchronizing PIM (Personal Information Management) applications, including messages, calendar, schedules and to do lists, address and contact lists. Despite good progress on this initiative, as expected, there are still a number of gaps that need to be addressed. • SyncML is primarily a framework and vendor deployments will vary significantly based on actual architectures, product roadmaps, and the extent of devices supported. • The current SyncML mobile device footprint makes today’s deployments more applicable to higher end mobile devices and PDAs. • Standard server-based protocol standards (beyond WAP) are still being discussed, and require forum wide agreement. Sharing of applications / services across mobile devices On a more fundamental level, SyncML (or any other standard industry initiative) has not addressed the need to update and share actual applications. Today, if a user downloads content to one Java-enabled mobile device, there is no automatic method of allowing this same user to access this content from another mobile device they happen to use. A good example of an outstanding need and opportunity is a mobile user who receives a graphically rich application on their mobile handset and wishes to run this application on their PDA, mobile laptop computer, or even to have it display
© 2001 PsiNaptic Inc. 20
on their TV via a set-top box. Today, there are no viable solutions to allow this to happen. JXTA for J2ME Mobile devices The JXTA platform is a set of open, generalized peer-to-peer protocols allowing any networked device to discover, communicate and collaborate with other devices (PDA’s, mobile phones, servers, etc.). JXTA is a server-dependent architecture. JXTA for J2ME is a new project from the JXTA development community. The JXTA for J2ME project specification proposes dividing the task between two modules: a JXTA peer, which runs on the MIDP device, and a JXTA relay, which runs on any larger peer on the JXTA network capable of running a relay service. The relay is a kind of proxy or surrogate and implies that the larger peer will be available to the MIDP device - that may not always be true and, in fact, seems to disagree with the assumption of a “peer” device. Like MExE, this new technology will depend on the availability server resources, and offers no solution as the user moves outside the service provider’s trusted domain, across different network boundaries and between work and leisure contexts. Summary Challenges and opportunities continue to exist in synchronization of data and in accessing the same content and applications across mobile devices, outside of specific server environments and trusted network domains.
© 2001 PsiNaptic Inc.
21
2.4
Efficient Configuration and Update of Mobile Computing Applications
2.4.1 The Challenge and The Opportunity Given the volume and relative price of mobile computing as compared to PC platforms, it is essential that service providers develop solutions to ensure that mobile applications are configured and updated in a manner that is efficient, cost effective, and as easy as possible for the end user. Service providers are likely to face insurmountable challenges in penetrating the mass market with mobile computing if the desktop PC model of manual configuration and update is carried over to mobile computing. Efficient solutions that enable automatic configuration and updating will be particularly important for business and enterprise customers looking to justify cost and realize productivity gains. The following quotation from Sun Microsystems illustrates this point. “That was our original thought. Change is not a rare event - it's constant. We had to figure out a way to allow change to happen without involving people. If change required people, and considering networks now growing into millions of machines and the amount of change those networks experience, we would all have to become system administrators. The only way to avoid that is to automate the ability to deal with change.” (Jim Waldo, Sun Microsystems, responding to an interview question in Java World, about the cost of change, Nov. 21, 2001) No one assumes that each person can completely configure and manage their own desktop PC - organizations maintain IS departments and individuals either struggle along as best they can or hire professional technicians. In the new mobile computing device environment - where already there are more devices than PCs in the world - it is hopeless to assume that users will manage their own devices.
© 2001 PsiNaptic Inc. 22
As PANs begin to proliferate, and as annual mobile device shipments grow well beyond a billion (over the next few years), the problem will only deepen. The bottom line is that today we must find ways for devices to configure and manage themselves in a manner that minimizes or, ideally, eliminates the involvement of people. 2.4.2 Current Service Gaps WAP a) Configuration: In order to personalize content, WAP users are required to browse content choices on the service provider server or portal, and on a wide range of external sites (outside the provider’s domain). It takes significant time to configure and manage personalized mobile menus. While it may be acceptable for early adopters to invest this time, for enterprises the time each user spends configuring a mobile device takes away from the productivity and financial payback of mobile deployments. For enterprises, WAP requires custom integration into back office systems and IT infrastructures. This means there is a frequent need to re-configure systems and interfaces as back office applications and IT infrastructures change. b) Application Updates: WAP’s advantage in being always connected means that once services are set up, updated server-side applications translate to updated user applications on mobile devices. However, with current WAP technology the user is forced to periodically purchase a new WAP-enable phone (with a new browser version) to keep pace with mobile operator server-side version changes. This further impacts an enterprises financial payback for mobile deployments.
© 2001 PsiNaptic Inc. 23
Mobile Java. a) Configuration: Mobile Java also requires an investment in user configuration. However, because of Java’s hardware independence, there is no need to change mobile browser and devices in order to obtain the next generation of applications. b) Application updates: If an application the user downloads changes in today’s environment, the service provider must notify the user and the user is required to download the new version. In addition, the user must take the time (and know how) to clear memory on their phone to make room for the new download. • For consumer applications, a change in a service provider backend application often requires an update of the application(s) residing on the user devices - a costly proposition. Who performs the update - user or provider? • For enterprise applications running mobile deployments of SAP, Oracle, etc., the same mobile device update issues arise when application versions or features change on corporate servers. Although mobile devices can be running enterprise Java applications, they are not integrated into the enterprise IT infrastructure. When back office applications change, an enterprise must allocate resources to ensure mobile applications are up-to-date. Summary In summary, while there are compelling reasons for being able to configure and update mobile applications, without the involvement of people, little progress appears to have been made in this area.
© 2001 PsiNaptic Inc.
24
2.5
Service Delivery Within a Variable and Ad Hoc Mobile Environment
2.5.1 The Challenge and The Opportunity The mobile computing environment is becoming more distributed and dynamic in nature. In this environment, access to networked computing resources will continue to vary widely in terms of reliability, network latency, bandwidth, level of security, network access, and transport costs. It is no longer feasible to depend on continuous access to single elements in a confined network. Within this ad hoc and distributed environment, the challenge will be ensure applications and services can be delivered in a consistent and seamless manner, regardless of where the user happens to be. 2.5.2 Current Service Gaps WAP WAP falls short in this environment because it is no longer feasible to depend on continuous access to single server in a confined network. Mobile Java Java is well suited to an ad hoc mobile computing environment. With Java technology-based applications, it is possible to run applications on the phone, and synchronize later with back-end systems. However, despite the resilience of Javatechnology in mobile environments, there is still a dependency on the availability of network servers to obtain network style interactive applications.
© 2001 PsiNaptic Inc.
25
Summary Both challenges and opportunities remain in terms of being able to seamlessly deliver services in a truly distributed and ad hoc mobile computing environment.
3
What Is Needed To Address Industry Challenges?
For a single enabling technology to address these key industry challenges and opportunities, it must address the following requirements: 1. Provide a mechanism for enabling a pervasive electronic presence that senses and responds to a customer-unique profile, allowing mobile users to automatically receive context-relevant services in a seamless manner, across different networks (WAN, LAN and PAN). 2. Solve the interoperability and ease-of-use issues that currently exist with Bluetooth and other short-range communications technology, and thus support the deployment of compelling PAN services. 3. Enable applications to run in a seamless manner across mobile devices, without dependence on specific servers, and outside of primary service provider domains. 4. Enable automatic configuration of applications on mobile devices applications. 5. Enable automatic updating of applications on mobile devices. Mobile device applications should integrate seamlessly into service provider and enterprise IT infrastructures.
© 2001 PsiNaptic Inc. 26
6. The ability to provide a seamless user experience in an increasingly distributed mobile computing environment, where servers may not always be available, and where there is variability in terms of reliability, network latency, bandwidth, security, and network costs.
4 4.1
A Novel Solution To Address Key Industry Challenges. Solution Overview—Jini™ Network Technology
Many of the issues raised above are addressed by Jini network technology. It provides simple mechanisms that enable devices to form impromptu network communities (Jini federations) - communities formed without planning, installation, or human intervention. Devices in a federation may provide services that other member devices may use. Moreover, services and information can be shared between members seamlessly, securely, and reliably. JMatos, PsiNaptic’s implementation of Jini network technology for resourceconstrained devices, is well suited to emerging mobile computing environments, defining mechanisms to support the federation of machines or programs into a single, dynamic distributed system. Devices participating in such a system can enter and leave at will, can tolerate network and system variability, and can offer services and resources to other devices and systems in the federation. A few years ago, Sun Microsystems’ Jini technology captured the imagination of the mobile industry when Sun demonstrated a mobile device using the Jini Surrogate Architecture controlling other devices in a user’s environment through a WAP browser. Despite this vision, the large footprint of this technology has restricted its use to environments comprised of devices with sufficient computing capacity.
© 2001 PsiNaptic Inc.
27
Mark Driver at the Gartner Group reiterated this dilemma. “Although Jini™ still promises to lay a sumptuous table in the next few years in enabling next-generation networks, its current networking capabilities have proven to be a little too rich for application developers who, of necessity, are on strict memory and processing power diets.” The Gartner Group goes on to predict that if the footprint issues of Jini can be overcome successfully then “…Jini should begin to emerge as a key enabling technology used in 70 percent of commercial network computing applications.” As a result of a breakthrough development, JMatos, it is now possible to deploy Jini network technology using resource-constrained mobile devices, thus allowing mobile devices to dynamically and spontaneously exchange information and services on behalf of mobile users. PsiNaptic’s JMatos software is a fully compliant micro version of Jini network technology ideally suited for mobile constrained devices. JMatos’ has a small footprint of less than 100 kilobytes for full Jini technology compatibility. JMatos software provides the mobile industry with a protocol and device independent network software solution that can now run on Java-enabled, resource-constrained mobile devices in a secure, reliable manner across dynamic ad hoc networks. This new development now makes it possible to solve key industry challenges, while enabling the creation of a variety of innovative new services.
© 2001 PsiNaptic Inc.
28
4.2
Technology—Jini Technology and JMatos™ Software
4.2.1 Jini Network Technology Overview Jini-based technology defines mechanisms to support the federation of machines or programs into a single, dynamic distributed system. Devices participating in such a system can enter and leave at will, can tolerate network and system variability, and can offer “services” and resources to other devices and systems in the federation. In the context of this specification, a "service" refers to an entity that can be used by a person, group of people, organization, program or other service. The service can be anything that can be offered by a computational, networked device, including access to a network, computation, storage, information, access to hardware (such as a printer, modem, etc.) or another user. Furthermore, devices are able to discover and utilize the "services" provided by members of the federation. This is accomplished through protocol definitions that support network transactions via six primary mechanisms as follows: Lookup: This is a Jini service that maps interfaces indicating the functionality offered by a service to sets of objects that implement the service. In general, Jini services employ objects based on Java, and can run on any device that supports a Java Virtual Machine (JVM). Associated with the service are descriptive entries that allow for the selection of services based on properties understandable by one or more entities in the Jini federation. Objects in a Lookup Service may contain other Lookup Services, allowing for a hierarchical structure. User of a Lookup Service may add new services, dynamically extending the functionality of the federation.
© 2001 PsiNaptic Inc.
29
Discovery: The process of finding a suitable Lookup Service is referred to as Discovery. Lookup Services listen for and respond to requests for Lookup Services. Alternatively, a Lookup Service may announce its presence on the network via a broadcast message. A service may use the announcement to locate a suitable Lookup Service. Join: Once a Lookup Service has been found, a service may join that Lookup Service by providing one or more objects. The Join protocol defines this mechanism. Leasing: The use of a resource is granted for a specific amount of time is known as a lease. The duration of the lease may be fixed by the grantor, or negotiated. To maintain the use of a service (including services joined to Lookup Services), the lease must be renewed periodically. This allows for the expiration and cleanup of services that are no longer required, or whose owners have left the federation. Thus, leasing helps manage interactions between devices in a variable network environment. Transactions: A transaction refers to the mechanism used to ensure that service operations are consistent and complete within the federation. A transaction allows a set of operations to be grouped in such a way that they either all succeed or all fail. To members of the federation, the operations in the set appear to occur simultaneously. By utilizing transactions, consistency over a set of operations on one or more remote participants can be enforced. If all the participants are members of a transaction, one response to a remote failure is to abort the transaction, thereby ensuring that no partial results are written. Events: An object residing on a device may register an interest in and event occurring in another object residing on a different device in the federation and receive notification when the event occurs. Thus, events provide a mechanism for maintaining consistency of state (information) in the federation.
© 2001 PsiNaptic Inc. 30
Using Jini, devices can spontaneously form federations (network communities) through the Discovery and Join protocols. When a device using Discovery and Join connects to one or more other devices to form a network, the device polls the network for a Jini Lookup Service. The device then registers itself with the Lookup Service. Alternatively, the device may itself already host a Lookup Service, which then becomes available to (discoverable by) other devices in the network. Devices in the network may query the Lookup Services they have discovered to determine whether desired services are available. Desired services can be downloaded and executed locally by a device. Because this process is automatic, devices (and hence, users) need not perform complicated installation procedures to couple Jini-enabled devices to the network and enable the devices to function cooperatively with other devices on network. 4.2.2 Past Limitations of Jini Technology In the reference implementation of Jini, Sun Microsystems employed its Remote Method Invocation (RMI) technology. The primary Lookup Service behavior is defined by the Service Registrar interface which is implemented as an RMI proxy. When a client device needs to use the Lookup Service (LUS), it downloads the Service Registrar object. Execution of Service Registrar methods is done via the proxy that makes RMI calls back to the device hosting the LUS. The use of RMI is convenient in that Jini is itself an extension of some of the fundamentals behind RMI and the problems that RMI purports to obviate or mitigate. In addition, Sun’s chose to sacrifice storage for speed; that is, their Jini technology implementation was optimized for access speed by using extra storage to maintain efficient data access structures. This is important if one assumes that the Jini Lookup Service will host services from several (or many) devices in the network.
© 2001 PsiNaptic Inc.
31
The resulting Jini Lookup Service implementation is too large (e.g., typically, requiring more than 3 megabytes of static and runtime storage). Many networked computing devices are task-specialized; they are very small, low power, low cost, (hence, resource-constrained) and often mobile—too small to support an RMIbased Jini. 4.2.3 A New Approach—The Foundation of JMatos™ To participate in a Jini federation, small devices must be given the resources required to support at least dynamic class loading and deserialization (i.e., be able to support RMI proxy operations) and be connected to other devices capable of hosting an RMI-based Jini LUS (i.e., a Jini “server”). The objections to these requirements are obvious. • Resources cost money and power, and are often prohibitive for typical devices. • Devices cannot be guaranteed that they will form networks with devices running an RMI-based Jini LUS. The assumption is that a Jini server will be part of any network the device might wish to join. This implies a client-server relationship, with Jini servers tending to host many disparate services. While the central server approach works well in many environments (i.e. enterprise solutions), it is difficult to scale to the ubiquitous computing environment. Highly mobile devices cannot rely on the presence of Jini servers in every network they encounter. For example, consider two PDAs that meet each other and wish to exchange and utilize services. In order to allow the ubiquitous computing environment to leverage the benefits of Jini, PsiNaptic developed a
© 2001 PsiNaptic Inc.
32
more appropriate implementation of Jini technology suited to mobile constrained environments. A review of the architecture, specification, and operation of Jini and a careful consideration of typical networked appliance characteristics and operation led PsiNaptic to formulate several key assumptions. Namely, they are: 1. A Lookup Service (LUS) on a device is intrinsically related to the device identity. Because the device is a task-specific tool, it offers services related to its “purpose”. The LUS is intrinsic to that device’s purpose because it’s the mechanism by which its services are offered to the wider community. For example, an EKG heart monitor offers services related to its purpose (providing information about a patient’s cardiopulmonary performance), but doesn’t offer unrelated services such as a list of the patient’s business contacts. 2. The LUS resides on a device less powerful than the devices utilizing its services. By definition, utilizing the Jini discovery process requires several powerful capabilities (serialization and dynamic class loading). However, a LUS residing on a device that only offers services can be implemented with fewer resource requirements. RMI is not required for a Jini implementation. A thorough reading of the Jini specifications indicates that RMI semantics (i.e. behavior) are required, but the RMI implementation is not required 4.2.4 PsiNaptic’s JMatos Software Recognizing the fact that the device offering services can be less powerful than the devices interacting with it, it makes sense to off-load as much of the processing from the offering device as possible. This fundamental architectural shift led to the implementation of the Service Registrar as a self-contained object,
© 2001 PsiNaptic Inc. 33
rather than a proxy. That is, the Service Registrar is an object requiring little subsequent collaboration with the LUS. This is in contrast to RMI-based Service Registrar implementations, where the majority of the processing is performed by the LUS. By tailoring Jini technology to meet the needs of resource-constrained devices, PsiNaptic was able to create JMatos, a Jini network technology implementation that is fully compliant with the Jini specification and requires less than 100 kilobytes of storage.
5
Applications of JMatos to Address Mobile Challenges
JMatos software is ideally suited for Mobile Information Devices. The extension of Jini technology to resource-constrained devices such as cell phones and PDAs increases functionality while offering tremendous benefits to service providers, application developers, and OEMs. There are a number of exciting applications for Jini technology in mobile information devices. 5.1 Providing Contextually-Relevant Mobile Services
JMatos allows a unique, user-specific software profile to drive the delivery of compelling services that precisely match a user’s profile and follow the user as he moves from location-to-location across WAN (2.5/3G) and PAN (Bluetooth) networks • The user mobile Java-based profile could be set up and updated on the mobile Java device itself, or from a service provider’s portal. • With a service provider portal hosting user profiles, users can both manage and receive services on different network devices, including mobile phones, PDAs or even desktop PCs.
© 2001 PsiNaptic Inc. 34
•
Mobile operators and registered third party content providers are able to automatically discover the user profile and respond with content, which best matches the user’s profile and operating context (device, location, etc).
Direct Benefits • Offers service providers a novel, customer centric alternative for providing contextually personalized services, irrespective of network boundaries. • Can be used by leading mobile operators, and system integrators to differentiate services, while increasing the attractiveness and stickiness of a branded mobile portal. Users would come to the portal to manage their profile to enable the delivery of their tailored services across the full array of mobile devices that they may use (mobile phones, PDAs, laptop PCs, etc.) • An important source of differentiation for OEMs who wish to increase the utility of mobile devices. 5.2 Delivering Personal Area Network Services
With the combination of Bluetooth and JMatos on a Java-enabled mobile device, it is now possible to solve the interoperability and ease-of-use issues that currently exist with Bluetooth communications technology. • JMatos is based on Jini technology, which is a service-level, device and protocol independent technology.
© 2001 PsiNaptic Inc.
35
•
Disparate devices that come into contact with each other can utilize Bluetooth as a data protocol to seamlessly communicate, and to dynamically share information and services.
•
Since devices in a Jini federation can automatically discover and join other devices, users are removed from onerous setup and configuration tasks.
Network devices can include mobile phones, PDAs, PCs, servers, etc. PAN content and m-commerce services are virtually unlimited In addition, PsiNaptic’s reference hardware platform (which contains Bluetooth and JMatos) can be used to enable PAN devices without inherent Bluetooth receivers to readily participate and offer services in a PAN environment. Direct Benefits • • • Interoperability across devices and services. End user ease of use – virtually no user configuration and setup. Enables peer-to-peer applications between mobile users, including locating users with common interests and affinities, or business users with mutual business needs. • Can enable mobile operators and system integrators to provide compelling PAN services that precisely match user needs. • Allows OEMs and developers to increase the utility and value of Bluetooth solutions and applications. 5.3 Efficient Configuration and Update of Mobile Computing
© 2001 PsiNaptic Inc. 36
Applications 5.3.1 Automatic Device Updates With JMatos on a Java-enabled mobile device, it is no longer necessary for the device manufacturer or the mobile user to have to go through the trouble and expense of having to load and reconfigure new drivers each time new Java applications and future hardware extensions (e.g. scanners, bar code readers, credit card scanners, etc.) are added. • PsiNaptic’s JMatos provides a simple mechanism to enable network objects to discover and join each other and implement these new service interfaces and drivers without the need to engage the user themselves in setup and configuration. • Mobile devices do not require a server to be updated. Updates can be obtained from other capable mobile devices within the Jini federation. Direct Benefits • • Extending product lifecycle and sustained end user utility and value. Can be a key ingredient in differentiating new Java devices.
5.3.2 Integration of Mobile Devices in IT Infrastructures JMatos allows mobile devices to be integrated into back office IT infrastructures. Both Java-enabled mobile devices and back office IT systems infrastructure can be part of the same Jini federation. This integration can enable the following to occur:
© 2001 PsiNaptic Inc.
37
•
Mobile device can automatically trigger events and actions in back office systems.
•
Back office system events can trigger mobile devices to receive specific messages, content, or application updates.
It is now possible to allow Java-enabled applications on mobile devices to be automatically configured and updated from back office applications. 1. Service Provider Application. Once a service provider creates a unique software based profile for its subscriber, these profiles can then be managed on a database. Using Jini technology a service providers legacy systems can become a part of a Jini federation. Jini ‘Event’ functionality can then be used to automatically drive promotional messages and service offers to subscribers with specific profile characteristics. Direct Benefits • Profile-based targeting can directly increase provider marketing effectiveness, revenues and end user retention. • Provides valuable data mining to better understand current user behavior, and in building more compelling future services. • Can significantly reduce the traditional costs and lead time for customer service implementations.
2. Enterprise Application.
© 2001 PsiNaptic Inc. 38
The tight linkage of mobile devices to enterprise back office applications (e.g., SAP, CRM applications, etc.) provide enterprises with greater flexibility in terms of being able to automatically configure and update work mobile applications. The capability to automatically configure and update means that it is feasible for enterprises to cost effective introduce and manage a wider variety of mobile applications that are relevant to specific job functions. Without back office integration, updating a wider range of mobile applications would be less feasible because of the requirements for enterprise administration, user update reminders, and maintenance of previous versions of back office applications. It is now feasible for an enterprise to configure mobile applications (including user interface, features, access rights, etc.) by specific job function. When a user moves to that specific job function, the initial interaction with the back office application can trigger an event to automatically configure their mobile device. The combination of JMatos and communications using content borne by platform independent protocols, such as XML, can enable back office updates to be delivered in a transparent manner to mobile users. Direct Benefits • Automatic configuration and updating makes it easier for enterprises to manage more custom, job specific mobile applications. • Can further justify productivity and financial paybacks from enterprise mobile deployments. • Can be a strong source of differentiation for system or service providers who integrate this technology into mobile enterprise solutions.
© 2001 PsiNaptic Inc. 39
5.4
Delivery of Peer-to-Peer and Device-to-Device Services
With JMatos on a Java-enabled mobile device and access to a packet data network (in a WAN, LAN, or PAN), it is now possible to dynamically share and exchange applications and services between mobile devices, desktop PCs, TV set-top TV boxes, vehicle navigation systems, etc, which support Java Virtual Machines. • JMatos is founded on Jini technology, which is a service-level, device and protocol independent technology. • Disparate devices that come into contact with each other can utilize a data packet network (WAN, LAN, or PAN) to discover each other, lookup services and dynamically share information, services and applications. • Since devices in a Jini federation can automatically discover and join other devices, users are removed from onerous setup and configuration tasks. • Mobile CLDC devices can ‘PUSH’ services to more capable CDC devices (i.e., PDAs, TV set-top boxes, vehicle navigation systems), or to less resource-constrained devices running full JVMs, such as PCs, servers, etc. • PDAs, set top boxes, PCs, servers, etc. can ‘PUSH’ and ‘PULL’ services from each other.
Direct Benefits • Interoperability across devices and services.
© 2001 PsiNaptic Inc. 40
• •
End user ease of use – virtually no user configuration and setup. Running applications remotely represents a novel, flexible alternative to the SyncML approach of synchronization data between devices and servers. In addition, the scope of applications goes well beyond PIM (Personal Information Management).
•
Enables peer-to-peer applications between mobile users, including locating users with common interests and affinities, or business users with mutual business needs.
•
Can enable service provides to provide differentiated peer-to-peer services, while significantly increasing overall network utilization and payback.
6
Conclusion
In this paper, the application of Jini network technology for resource-constrained mobile devices (as enable by PsiNaptic’s JMatos software) has been shown to address a number of current challenges faced by the mobile industry in delivering contextually relevant user services, helping deliver on the Bluetooth vision, enabling peer-to-peer services, and allowing mobile computing changes to happen without involving people. In addition, this breakthrough technology can enable a variety of innovative applications, only a few of which have been discussed in this paper. However, as with any other technology development, the true potential of this technology can only be realized through effective partnerships and alliances with manufacturers and systems and service providers across the mobile industry.
© 2001 PsiNaptic Inc.
41
7 [1]
References: Contextual Marketing, The Real Business of the Internet by David Kenny and John F. Marshall, Harvard Business Review, November – December 2000.
[2]
Creating the Mobile Enterprise, How to Achieve Competitive Advantage through Wireless Technologies, 2001 business intelligence report.
[3]
EURESCOM Integration of Small Devices into IT Infrastructure, EDIN 0214-1005, Project P1005, August 2001.
[4] [5] [6]
Syncml.org site and SyncML White Paper. Gartner Group, Java Jini article, 2001 author: Mark Driver. The Unfinished Revolution: Human-Centered Computers and What they can do for us, Michael Dertouzos MIT, January 2001.
[7]
Planet wireless (personal and local area networking via short-range wireless), June and July 2001.
[9]
ARC Group, Wireless Java: Handset & Application Revenue Streams, November 2001
[10]
Cahners In-Stat Group, Bluetooth 2000: Generation, July 2000
To Enable the Star Trek
[11]
Venture Development Corporation, The 2000 Embedded Software Strategic Market Intelligence Program: Volume VI – The Future of Embedded Java, 2001
© 2001 PsiNaptic Inc. 42
8
Acronyms Description Connected Device Configuration; a J2ME configuration Connection Limited Device Configuration; a J2ME configuration Java 2 Microedition Java Virtual Machine Local Area Network Mobile Information Device Profile (a J2ME CLDC profile) Personal Area Network Personal Digital Assistant Remote Method Invocation Small- and Medium-sized Enterprise Wide Area Network Wireless Application Protocol
Definition CDC CLDC J2ME JVM LAN MIDP PAN PDA RMI SME WAN WAP
© 2001 PsiNaptic Inc.
43
9
Legal Notice
The information from or through this publication is provided “as-is,” “as available,” and all warranties, express or implied, are disclaimed (including but not limited to the disclaimer of any implied warranties of merchantability and fitness for a particular purpose). No representations, warranties or guarantees whatsoever are made as to the accuracy, adequacy, reliability, timeliness, completeness, suitability or applicability of the information to a particular situation. The information may contain errors, problems or other limitations. In no event shall PsiNaptic Inc. be liable for any direct, indirect, special, incidental, or consequential damages (including damages for loss of business, loss of profits, litigation, or the like), whether based on breach of contract, breach of warranty, tort (including negligence), product liability or otherwise, even if advised of the possibility of such damages. The entire risk arising out of the use of this information remains with recipient. Any redistribution or reproduction of any materials or information contained herein is strictly prohibited. This publication and the information may be used solely for personal, informational, non-commercial purposes, and may not be modified or altered in any way. Recipient may not remove any copyright or other proprietary notices contained in the documents and information. Throughout this paper trademarked names are used. Rather than put a trademark symbol in every occurrence of a trademarked name, we state that we are using the names only in an editorial fashion and to the benefit of the trademark owner with no intention of infringement of the trademark. PsiNode, PsiNaptic, and JMatos are trademarks of PsiNaptic Inc. Other company names, brand names or product names mentioned herein may be trademarks and/or registered trademarks of their respective owners and companies.
© 2001 PsiNaptic Inc.
44